#ifndef __GU8G2_H
#define __GU8G2_H

#include "stm32f4xx.h"
#include "u8g2.h"
//u8g2初始化
extern void appU8g2Init(void);
//清除缓存区
extern void GU8g2_clearBuffer(void);
//设置字体背景颜色模式
extern void GU8g2_setFontModer(uint8_t num);
//设置字体
extern void GU8g2_setFont(const uint8_t * font);
//设置坐标位置
extern void GU8g2_setCursor(u8g2_uint_t _x,u8g2_uint_t _y);
//显示字符
extern void GU8g2_printf(const char *format, ...);
//发送缓存区
extern void GU8g2_sendBuffer(void);
//设置字体方向
extern void GU8g2_SetFontDirection(uint8_t dir);
//显示字符串
extern void GU8g2_drawStr(u8g2_uint_t _x, u8g2_uint_t _y, const char *str);
//绘制水平线
void GU8g2_drawHLine(u8g2_uint_t _x, u8g2_uint_t _y, u8g2_uint_t len);
// 绘制竖直线
void GU8g2_drawVLine(u8g2_uint_t _x, u8g2_uint_t _y, u8g2_uint_t len);
//获取显示器的高度
u8g2_uint_t GU8g2_getDisplayHeight(void);
//画实心方形
void GU8g2_drawBox(u8g2_uint_t _x, u8g2_uint_t _y, u8g2_uint_t w, u8g2_uint_t h);
//设置位图模式
void GU8g2_setBitmapMode(uint8_t is_transparent);
//设置绘制颜色
void GU8g2_setDrawColor(uint8_t color);
//绘制图像
void GU8g2_drawXBMP(u8g2_uint_t _x, u8g2_uint_t _y, u8g2_uint_t w, u8g2_uint_t h, const uint8_t *bitmap);
//绘制画空心方形
void GU8g2_drawFrame(u8g2_uint_t _x, u8g2_uint_t _y, u8g2_uint_t w, u8g2_uint_t h);
// 绘制UTF8编码的字符串
void GU8g2_drawUTF8(u8g2_uint_t _x, u8g2_uint_t _y, const char *s);
//画实心圆
void GU8g2_drawDisc( u8g2_uint_t x0, u8g2_uint_t y0, u8g2_uint_t rad, uint8_t option);
//画空心圆
void GU8g2_drawCircle( u8g2_uint_t x0, u8g2_uint_t y0, u8g2_uint_t rad, uint8_t option);
//绘制圆角空心方形
void GU8g2_drawRFrame(u8g2_uint_t _x, u8g2_uint_t _y, u8g2_uint_t w, u8g2_uint_t h, u8g2_uint_t r);
//绘制圆角实心方形
void GU8g2_drawRBox(u8g2_uint_t _x, u8g2_uint_t _y, u8g2_uint_t w, u8g2_uint_t h, u8g2_uint_t r);
//绘制线
void GU8g2_drawLine(u8g2_uint_t x0, u8g2_uint_t y0, u8g2_uint_t x1, u8g2_uint_t y1);
//绘制实心三角形
void GU8g2_drawTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, int16_t x2, int16_t y2);
//设置字体的参考高度为“扩展文本”模式
void GU8g2_SetFontRefHeightExtendedText(void) ;
//函数用来设置文字在显示时以顶部为基准线
void GU8g2_SetFontPosTop(void);
void GU8g2_drawGlyph(u8g2_uint_t x, u8g2_uint_t y, uint16_t encoding);
#endif

